fix(iOS, Paper, Fabric): previous tab visible on tab-change request#2823
fix(iOS, Paper, Fabric): previous tab visible on tab-change request#2823
Conversation
8324981 to
7bcbbc9
Compare
2d39ea1 to
6028aa8
Compare
|
We spend some time with @kkafar investigating this issue. Unfortunately we weren't able to resolve this issue, and it seems that's how UIKit works and there isn't really something we can do about it. The problem
*This is our assumption on how expected result should look like, it might be the other way around - haven't reproduce it on just UI Kit Testing I branched from this PR and added some logs on native side, you can find it on: https://github.com/software-mansion/react-native-screens/tree/%40maciekstosio/Investigate-2823-issue- When testing it's good to clear the logs after opening form sheet - we log a lot this is useful to narrow the scope. This is what's going on in both cases:
Not working case
Working case
Logs from NOT working caseLogs from working caseConclusion Based on above, we concluded that the problem lies in timing when new screen, and its parents, are attached to the window, which is handled by iOS (at the end of this operation iOS calls ASYNCHRONOUSLY There was an alternative idea that the problem maybe in the step One remark for the feature What is interesting, and could be further investigated - when we transition between screens, in working case, we start formsheet transition and those two are continued simultaneously. In the not working case, when the foresheet transition starts, screen transition is scheduled after the first one finished. This is explicitly in the code, but when I commented that part out, the behavior stayed the same. |
|
Won't proceed here. |

Description
Changes
Test code and steps to reproduce
Checklist